# Palm のフォント

Palm Pilot 上のフォントはかなり制限されています。各実体はデータベース内の独自のレコードとして、名前や他のフォントとの結び付きの有無を示す情報なしに格納されています (すなわち、フォントのファミリーという概念はありません。各フォントは孤立した存在です)。

古い Palm Pilot では、フォントデータ構造には 1 個の画面解像度用の実体のみが格納されていました。最近の Pilot には、複数の画面解像度 (Palm では“密度”と呼びます) 用の複数の実体を格納することができる新しいデータ構造があります。

新スタイルのフォントでは古い Palm では使えません (クラッシュします)。新しいシステムでは旧スタイルのフォントはクラッシュすると聞いています。

仄聞するところでは、現在のところ、新しいシステムはすべて同じ (高) 密度です (そのため、複数の密度をもつフォントは今のところは不要であり、必要なのは複数密度のラッパをもつ単独 (高) 密度のフォントです)。

アプリケーションをポータブルにするために現在提供する必要があるのは、旧式の Palm 用の旧方式の低解像度フォント 1 個と、高解像度の実体のみを含む新方式のフォント 1 個であると聞いています。

Palm OS のリファレンスには以下の密度が文書化されています:

- 1 倍
- 1.5 倍
- 2 倍
- 3 倍
- 4 倍

実際に使用されているのは 1 倍と 2 倍のみであると聞いています。FontForge は密度 1.5 倍のフォントをサポートしていません。

旧式の (低解像度) Palm フォントを出力したい場合、フォントを出力 ダイアログの ビットマップサイズ フィールドで、フォント実体のサイズを 1 個だけ指定してください。

ビットマップサイズ フィールドで 2 個以上の実体サイズを指定した場合、全てのサイズは最小の実体の小さな整数倍 (1,2,3,4) でなければなりません。それらの実体を以下のどの形で出力したいかを尋ねるダイアログが起動します。

- すべてを 1 個の複数密度フォントに格納する
- (最小の物を除く) すべてを複数密度フォントに格納する―FontForge はこれを高密度フォントと呼びます。
- データベースファイルの最初のレコードとして、最小の実体を含む旧方式の低解像度フォントと、出力されるファイルの 2 番目のレコードとして、すべての実体を含む新方式の複数密度フォント。
- データベースの最初のレコード内の旧方式の低解像度フォントと、出力されるファイルの 2 番目のレコード内の最小の物を除くすべての実体を含む新方式の複数密度フォント

最後のフォーマットがいちばん役立つと思います。これがデフォルトで、スクリプトの Generate コマンドで使用されるフォーマットです。

注意: 低密度の実体は必ず含めなければなりません。この実体は他のすべてのメトリックを含んでいます。それにもかかわらず、この実体を含んでいないフォントを出力することができます (上のリストの 2 番目の選択肢です)